{{define "demo01/index.html"}}
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

        {{.age}}
        </br>

        通过上下文参数获取后台的数组内容并进行遍历
        </br>
        {{range .str}}
            {{.}}
            {{/*在循环内部想获取根级上下文中的age的话，就需要使用$.来获取 （map_data这个上下文）*/}}
            {{$.age}}
        {{end}}
        </br>
        通过$遍历获取下标的方式进行遍历
        </br>
        {{range $i,$v := .str}}
            {{$i}}
            {{$v}} </br>
        {{end}}

    ------------字符串的定义和使用--------------------------------------</br>

        {{"支持字符串"}} </br>
        {{`字符串的原始写法`}} {{`a`}}</br>
        {{'a'}} a会被转换为AscII码 </br>

        {{print "print需要小写，并且中间是空格"}}
        {{print nil}}  {{/*输出结果为<nil>*/}}

    ----------------------变量的定义和使用----------------------------</br>
        </br>
       {{$Name :=  "变量通过$Name定义"}}
       {{$Name}}
       </br>

    当为bool类型的时候，则为true表示执行，当为string类型的时候，则非空表示执行。
    ---------------------- if的使用方式----------------------------</br>
       {{if .flag}}
             后端传过来的是true
       {{end}}
    ---------------------- 后端传来的是非空字符串----------------------------</br>
        {{if .username}}
            后端传过来的是非空字符串
        {{end}}
        </br>
   ---------------------- 后端传来的是空字符串----------------------------</br>
        {{if .username1}}
        后端传过来的是非空字符串
        {{end}}
        </br>

 ---------------------- if ..eles格式----------------------------</br>

        {{if .flag1}}
            这段被执行
        {{else}}
            这段不被执行
        {{end}}
            </br>
 ---------------------- if 的嵌套----------------------------</br>
        {{if .flag}}
           {{if .username}}
             都为true的时候才执行
           {{end}}
         {{else}}
            外部flag为flase的时候执行
        {{end}}
            </br>
 ---------------------- if 逻辑判断----------------------------</br>
 --------------------- 模板函数后续在进行补充---------------------------</br>
            not 非 {{ not .flag}}</br>
            and 与 </br>
            or 或 </br>
            eq 等于 </br>
            ne 不等于 </br>
            lt 小于 (less than)     </br>
            le 小于等于  </br>
            gt 大于  </br>
            ge 大于等于 </br>

---------------------- 模板函数循环的使用---------------------------</br>
            {{range .str}}
              {{.}}
            {{end}}
            </br>
 ---------------------- sturct类型数据---------------------------</br>
            {{.person.Name}}
            {{.person.Age}} </br>
            如果获取数据，每次都用.stu太麻烦了，要是一万个字段每次都要.person.所以启动with关键字：
            .person如果存在直接替换为. , 后面想访问stu中内容直接用.去获取即可，如：.Age,  .Name</br>
            {{with .person}}
                {{.Name}}
                {{.Age}}
            {{else}}
                暂无数据
            {{end}}
            </br>
 ---------------------- sturct类型数据---------------------------</br>

            {{/*    如果想要传递内容到内嵌模板中，可以通过.上下文进行传递，和内嵌页面共享上下文数据*/}}
            {{template "demo01/index02.html" .}}
</body>
</html>
{{end}}